package com.neu.api.mapper;

import com.github.pagehelper.Page;
import com.neu.api.pojo.User;
import com.neu.api.query.UserQuery;
import com.neu.api.vo.UserVO;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface UserMapper {
    //mybatis
       //注解
       //映射文件

    //@Select("select id,name from t_user ")
    //public List<UserVO> find();

    public void add(User user);

    /**
     * 用户登录
     * @param loginName
     * @param password
     * @return
     */
    public UserVO login(String loginName, String password);

    /**
     * 用户查询
     * @param userQuery
     * @return
     */
    Page<UserVO> find(UserQuery userQuery);

    /**
     * 编辑用户
     * @param user
     */
    void update(User user);

    /**
     * 删除用户，根据id
     */
    @Delete("delete from t_user where id = #{id}")
    void deleteById(long id);

    /**
     * 查询多少条记录
     * @param userQuery
     * @return
     */
    long findCount(UserQuery userQuery);
}